/*
 * Copyright (c) OSGi Alliance (2005). All Rights Reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 which accompanies this
 * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
 *
 * This copyright applies to the comments and public final static String fields only
 */
package org.osgi.core.application.interfaces
{

	/**
	 * ApplicationContext is the access point for an OSGi-aware application to the features of the OSGi Service Platform.
	 * <p>
	 * Each application instance will have its own ApplicationContext instance,
	 * which will not be reused after destroying the corresponding application instance.
	 * Application instances can obtain their ApplicationContext using the Framework.getApplicationContext(java.lang.Object) method.
	 * The lifecycle of an ApplicationContext instance is bound to the lifecycle of the corresponding application instance.
	 * The ApplicationContext becomes available when the application is started and it is invalidated when the application instance is stopped (i.e. the "stop" method of the application activator object returned).
	 * All method calls (except getApplicationId() and getInstanceId()) to an invalidated context object result an IllegalStateException.
	 * </p>
	 */
	public interface IApplicationContext
	{
		function addServiceListener():void
	}
}